﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

using Microsoft.AspNet.Identity;
using Microsoft.AspNet.Identity.EntityFramework;
using Microsoft.AspNet.Identity.Owin;
using Owin;
using CorreoSocialWeb.Models;

namespace CorreoSocialWeb.Admin
{
    public partial class RechazarSolicitud : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                MensajeDeError.Text = String.Empty;

                if (!IsPostBack)
                {
                    String idUsuario = Request.QueryString["id"].ToString();
                    var manager = Context.GetOwinContext().GetUserManager<ApplicationUserManager>();
                    ApplicationUser user = manager.FindByName(idUsuario);
                    lblUsuario.Text += user.Nombre + " " + user.Apellido;
                }
            }
            catch
            {
                Response.Redirect("../");
            }
        }

        protected void btnRechazar_Click(object sender, EventArgs e)
        {
            try
            {
                MensajeDeError.Text = String.Empty;

                String idUsuario = Request.QueryString["id"].ToString();

                var manager = Context.GetOwinContext().GetUserManager<ApplicationUserManager>();
                ApplicationUser user = manager.FindByName(idUsuario);
                manager.SendEmail(user.Id
                       , "Rechazo de tu usuario: " + user.UserName
                       , "Motivo de rechazo para su solicitud: " + txtMotivo.Text + "!\n\nCorreo Social!");
                manager.Delete(user);

                MensajeDeError.Text = "Usuario Rechazado.";
                txtMotivo.Enabled = false;
                btnRechazar.Enabled = false;
            }
            catch
            {
                MensajeDeError.Text = "Ocurrió un error al rechazar un usuario. Intentelo más tarde.";
            }
        }

        protected void btnCancelar_Click(object sender, EventArgs e)
        {
            txtMotivo.Text = String.Empty;
        }
    }
}